System and methods for location determination in MIMO wireless networks

ABSTRACT

Disclosed herein, one embodiment of the disclosure is directed to a system, apparatus, and method for location estimation in the presence of multipath/non-line-of-sight (NLOS) conditions. Various methods have been contemplated to detect the level of multipath/NLOS propagation between two devices. A SNR variation method determines how the SNR of each chain/stream is varying over a time window in order to detect the chain/stream with least local scattering or multipath. A measure of coherence SNR is defined to measure the level of multipath/NLOS per-chain/stream. Moreover, since per-subcarrier SNR information is available at the one or both nodes, the coherence methods can be used on a per-subcarrier basis to detect multipath/NLOS for the entire channel, for the specific spatial stream or for the specific frequencies occupied by the subcarriers. Furthermore, a coherence bandwidth estimation method uses the SNR variation over subcarriers to detect the coherence bandwidth of the spatial stream. The amount of multipath/NLOS is inversely proportional to the coherence bandwidth.

FIELD

Embodiments of the disclosure relate to wireless digital networks, andin particular, to a system and method for accurately and efficientlyestimating locations of client devices in amultiple-input-multiple-output (MIMO) environment.

BACKGROUND

In an IEEE 802.11 wireless network, multiple-input-multiple-output(MIMO) devices use multiple chains for spatial multiplexing as well asadvanced techniques such as transmit beamforming (TxBF) and multi-userMIMO (MU-MIMO) for increasing the reliability and performance ofcommunication. In such a network, known location estimation methods useeither the received signal strength indicator (RSSI)/signal-to-noiseratio (SNR) or time-based information (time of arrival “ToA”, timedifference of arrival “TDoA”) for location estimation.

The presence of multiple chains and multi-stream rates makes itdifficult to estimate an accurate RSSI. The RSSI/SNR can be measuredper-chain, though typically an average, maximum, or minimum RSSI/SNR isreported to the application for location estimation. Each chain mayreceive the data stream through a different path (i.e., direct path vs.multipath). Even for single stream rates (i.e., management frames usinglegacy rates), all the received chains may be used to receive the frameand techniques such as maximal ratio combining (MRC) may be used toconstruct the single stream data. The result is that the RSSI/SNRmeasurements can be highly variable and can introduce significant errorin location estimation.

Herein a device that shapes its transmitted frames is called abeamformer, and a receiver of such frames is called a beamformee.Advanced MIMO techniques such as TxBF and MU-MIMO require the beamformerand beamformee to frequently exchange information regarding the channelstate.

BRIEF DESCRIPTION OF THE DRAWINGS

The disclosure may best be understood by referring to the followingdescription and accompanying drawings that are used to illustrateembodiments of the disclosure by way of example and not limitation. Inthe drawings, in which like reference numerals indicate similarelements:

FIG. 1 illustrates an exemplary environment in which embodiments of thedisclosure may be practiced.

FIG. 2 is an exemplary block diagram of logic associated with a wirelessnetwork device.

FIG. 3 is a flowchart illustrating an exemplary method for determiningpath loss per RF subcarrier.

FIG. 4 is a flowchart illustrating an exemplary method for discardingunsuitable signal strength data.

FIG. 5 is a flowchart illustrating an exemplary method for selectingsuitable received signal strength data.

FIG. 6 is a flowchart illustrating an exemplary method for filteringdata based on RF subcarriers.

FIG. 7 is a flowchart illustrating an exemplary method for comparing RFsignal fingerprints.

FIG. 8 is a flowchart illustrating an exemplary method for comparing RFsignal fingerprints.

DETAILED DESCRIPTION

In the following description, numerous specific details are set forth.However, it is understood that embodiments of the disclosure may bepracticed without these specific details. In other instances, well-knowncircuits, structures and techniques have not been shown in detail inorder not to obscure the understanding of this description.

Disclosed herein, one embodiment of the disclosure is directed to asystem, apparatus, and method for determining path loss per radiofrequency (RF) subcarrier. Path loss per RF subcarrier may be determinedby obtaining from a first device feedback information, where thefeedback information may correspond to at least one frame transmitted tothe first device. Then, a plurality of received signal strength valuesmay be derived for at least one frame as received at the first devicebased at least in part on the feedback information, where each receivedsignal strength value of the plurality of received signal strengthvalues may correspond to a respective RF subcarrier in a plurality of RFsubcarriers. Next, an effective radiated power value corresponding to aparticular RF subcarrier that was used for transmitting the at least oneframe may be obtained for each particular RF subcarrier. Thereafter, apath loss value for the particular RF subcarrier may be obtained basedon the received signal strength value corresponding to the particular RFsubcarrier and the effective radiated power value corresponding to theparticular RF subcarrier.

Disclosed herein, another embodiment of the disclosure is directed to asystem, apparatus, and method for discarding unsuitable signal strengthdata. Unsuitable signal strength data may be discarded by firstreceiving a particular frame from a second device at each of a pluralityof RF chains of a first device. A variance in received signal strengthfor the particular frame as received at each of the plurality of RFchains of the first device may be determined. Thereafter, the variancemay be used to determine whether or not to use one or more attributevalues for the particular frame as received at at least one of theplurality of RF chains for determining a distance between the firstdevice and the second device or determining a location of the seconddevice.

Disclosed herein, still another embodiment of the disclosure is directedto a system, apparatus, and method for selecting suitable receivedsignal strength data. Suitable received signal strength data may beselected by receiving at each of a plurality of RF chains, acorresponding set of frames from a second device. Characteristicsassociated with the set of frames received at each particular RF chainof the plurality of RF chains may be determined. Next, a subset of RFchains from the plurality of RF chains may be selected based on thecharacteristics associated with the set of frames received at eachparticular RF chain of the plurality of RF chains. Thereafter, at leastone particular operation may be performed using the characteristicsassociated with the set of frames received at the selected subset of RFchains without using the characteristics associated with the set offrames received at non-selected RF chains.

Disclosed herein, yet another embodiment of the disclosure is directedto a system, apparatus, and method for filtering data based on RFsubcarriers. Data may be filtered per RF subcarrier by first receiving aset of one or more frames by a first device from a second device. Then,characteristics associated with the set of frames for each RF subcarrierof a plurality of RF subcarriers, on which the set of frames weredetected, may be identified. Next, a subset of RF subcarriers may beselected based on the characteristics. Thereafter, a first subset of thecharacteristics associated with the subset of RF subcarriers may beidentified.

Disclosed herein, a further embodiment of the disclosure is directed toa system, apparatus, and method for comparing RF signal fingerprints. RFsignal fingerprints are compared by receiving a first set of one or moreframes from a first device at a first location. Then, a received signalstrength value associated with the first set of frames at eachparticular RF subcarrier of a plurality of RF subcarriers may beidentified to obtain a first plurality of signal strength values. Asecond set of one or more frames may be received from a second device. Areceived signal strength value associated with the second set of framesat each particular RF subcarrier of a plurality of RF subcarriers may beidentified to obtain a second plurality of signal strength values. Next,whether the first plurality of signal strength values and the secondplurality of signal strength values share one or more similar derivedcharacteristics may be determined. Thereafter, a location of the seconddevice may be estimated as the first location responsive to adetermination that the first plurality of signal strength values and thesecond plurality of signal strength values share one or more similarcharacteristics.

Disclosed herein, a further embodiment of the disclosure is directed toa system, apparatus, and method for comparing RF signal fingerprints. RFsignal fingerprints are compared by receiving a first set of one or moreframes from a first device at a first location. Then, a variabilityvalue relating to variability over time associated with the first set offrames at each particular radio frequency chain of a plurality of radiofrequency chains may be identified to obtain a first plurality ofvariability values. A second set of one or more frames may be receivedfrom a second device. A variability value relating to variability overtime associated with the second set of frames at each particular radiofrequency chain of a plurality of radio frequency chains may beidentified to obtain a second plurality of variability values. Then, asubset of the first plurality of variability values may be selected as afirst subset of variability values based, at least in part, on one ormore characteristics associated with the first set of frames, and asubset of the second plurality of variability values may be selected asa second subset of variability values based, at least in part, on one ormore characteristics associated with the second set of frames. Next,whether the first subset of variability values and the second subset ofvariability values share one or more similar characteristics may bedetermined. Thereafter, a location of the second device may be estimatedas the first location responsive to a determination that that the firstplurality of variability values and the second plurality of variabilityvalues share one or more similar characteristics.

Of course, other features and advantages of the disclosure will beapparent from the accompanying drawings and from the detaileddescription that follows below.

In the following description, certain terminology is used to describefeatures of the disclosure. For example, in certain situations, the term“logic” is representative of hardware, firmware and/or software that isconfigured to perform one or more functions. As hardware, logic mayinclude circuitry having data processing or storage functionality.Examples of such circuitry may include, but is not limited or restrictedto a microprocessor, one or more processor cores, a programmable gatearray, a microcontroller, an application specific integrated circuit,wireless receiver, transmitter and/or transceiver circuitry,semiconductor memory, or combinatorial logic.

Logic may be software in the form of one or more software modules, suchas executable code in the form of an executable application, anapplication programming interface (API), a subroutine, a function, aprocedure, an applet, a servlet, a routine, source code, object code, ashared library/dynamic load library, or one or more instructions. Thesesoftware modules may be stored in any type of suitable non-transitorystorage medium, or transitory storage medium (e.g., electrical, optical,acoustical or other form of propagated signals such as carrier waves,infrared signals, or digital signals). Examples of non-transitorystorage medium may include, but are not limited or restricted to aprogrammable circuit; a semiconductor memory; non-persistent storagesuch as volatile memory (e.g., any type of random access memory “RAM”);persistent storage such as non-volatile memory (e.g., read-only memory“ROM”, power-backed RAM, flash memory, phase-change memory, etc.), asolid-state drive, hard disk drive, an optical disc drive, or a portablememory device. As firmware, the executable code is stored in persistentstorage. When executed by one or more processors, executable code maycause the one or more processors to perform operations according to theexecutable code.

A “frame” is a series of bits having a prescribed format. Examples of aframe may be a typical frame format as well as other variations such asan Asynchronous Transfer Mode “ATM” cell. Also, the terms “or” and“and/or” as used herein are to be interpreted as inclusive or meaningany one or any combination. Therefore, “A, B or C” or “A, B and/or C”mean “any of the following: A; B; C; A and B; A and C; B and C; A, B andC.” An exception to this definition will occur only when a combinationof elements, functions, steps or acts are in some way inherentlymutually exclusive.

A subcarrier is a portion of the channel bandwidth used in orthogonalfrequency-division multiplexing (OFDM)-based transmissions. The wholechannel bandwidth is divided into smaller sub-channels or subcarriers.The number of subcarriers is typically a power of two, but somesubcarriers may not be used to carry data (e.g., pilot, DC, or channeledge subcarriers). For example, an 80 MHz channel may be divided into256 subcarriers of 312.5 kHz each.

FIG. 1 illustrates an exemplary environment 100 in which embodiments ofthe disclosure may be practiced. The exemplary wireless network devices110 are MIMO-capable network device that provides data access service toone or more client devices 120 via wireless radio frequency (RF)transmissions. Wireless network devices 110 and client devices 120 mayoperate according to one or more versions of the IEEE 802.11 standards,such as the IEEE 802.11n and IEEE 802.11ac standards. Although twowireless network devices 110 and three client devices 120 are shown inFIG. 1, namely wireless network devices 110A-B and client devices 120A-C, environment 100 may include additional wireless network devices 110and/or client devices 120. These additional devices, however, areomitted from FIG. 1 in order not to obscure the disclosure. Moreover,the association statuses of wireless network devices 110 and clientdevices 120 shown in FIG. 1 are illustrative only, and do not limit thedisclosure in any way.

Referring now to FIG. 2, an exemplary block diagram 200 of logicassociated with wireless network device 110 is shown. The wirelessnetwork device 110 comprises one or more processors 210 which arecoupled to communication interface logic 220 via a first transmissionmedium 215. Communication interface logic 220 enables communicationswith the data network (not shown), with client devices such as clientdevices 120 of FIG. 1, and possibly with an external controller (notshown). According to one embodiment of the disclosure, communicationinterface logic 220 may be implemented as one or more radio modulescoupled to antennas for supporting wireless communications with otherdevices. Additionally, communication interface logic 220 may beimplemented as a physical interface including one or more ports forwired connectors.

The one or more processors 210 are further coupled to persistent storage250 via transmission medium 255. According to one embodiment of thedisclosure, persistent storage 250 may include radio driving logic 260,channel estimation logic 265, and/or beamforming logic 270 for theproper operation of wireless network device 110. Of course, whenimplemented as hardware, radio driving logic 260, channel estimationlogic 265, and/or beamforming logic 270 would be implemented separatelyfrom persistent memory 250.

Embodiments of the disclosure may be used with a variety of locationestimation methods, including those based on RSSI/SNR or time-basedinformation (ToA, TDoA) as well as RF fingerprinting based methods. Theembodiments can be used with the wireless network device 110 as well asthe client device 120 to locate the position of any device (wirelessnetwork device 110 or client device 120) it is trying to locate. Theterms “SNR” and “RSSI” are used interchangeably throughout thisapplication, as one can be derived from the other when the actual orestimated noise floor is known.

Various methods have been contemplated to detect the level ofmultipath/non-line-of-sight (NLOS) propagation between two devices. ASNR variation method determines how the SNR of each chain/stream isvarying over a time window in order to detect the chain/stream withleast local scattering or multipath. A measure of coherence SNR isdefined to measure the level of multipath/NLOS per-chain/stream.Moreover, since per-subcarrier SNR information is available at the oneor both nodes, the coherence methods can be used on a per-subcarrierbasis to detect multipath/NLOS for the entire channel, for the specificspatial stream or for the specific frequencies occupied by thesubcarriers. Furthermore, a coherence bandwidth estimation method usesthe SNR variation over subcarriers to detect the coherence bandwidth ofthe spatial stream. The amount of multipath/NLOS is inverselyproportional to the coherence bandwidth.

The exact power profile of a frame (e.g., power transmitted out of theantenna for the entire frame as well as power per-subcarrier)transmitted from an IEEE 802.11 source may be accurately estimated basedon the known OFDM profile information, the radio's transmit power,antenna gain and using a calibration method. When the received powerinformation (per-frame or per-subcarrier) is obtained from the receiver,the exact path loss between the transmitter and the receiver may becalculated. Spatial streams, frames or subcarriers with highmultipath/NLOS may be excluded from this calculation for accurate pathloss with the multipath/N LOS detection methods. In another embodiment,instead of discarding spatial streams, frames or subcarriers with highmultipath/N LOS outright, weighting may be used and these spatialstreams, frames or subcarriers may be assigned a smaller weight.

In many location estimation algorithms, a set of “anchor” nodes thathear the nodes to be located need to be selected. For example,trilateration or triangulation requires a minimum of three nodes. Avalue of weight may be assigned to the quality of data from each anchornode based on the level of multipath/NLOS. The set of anchor nodes withthe best value (least multipath/N LOS) can be selected for locationestimation. Some anchor nodes may be discarded based on the level ofmultipath or if they are deemed to be in an area with high levels ofNLOS from the perspective of client devices. In some embodiments,instead of discarding the anchor nodes outright, the weight can be usedto derive a confidence level for the location estimate. For example,rather than discarding some anchor nodes under multipath/NLOS condition,all anchor nodes can be considered in some trilateration techniques,such as weighted least squares, by using the weight derived frommultipath/NLOS determination. It should be appreciated that weightinginstead of discarding the nodes may be preferable when not many anchornodes are available.

The quality of SNR/RSSI or time-based information may vary over time fora specific node due to multipath or NLOS based on the mobility of theclients. Based on the multipath/NLOS detection methods, samples may bediscarded or best frame(s), spatial stream(s) or subcarrier(s) can beselected to provide the information necessary for the locationapplication.

In RF fingerprinting of IEEE 802.11 networks, RF measurements arecollected at known and fixed locations. During the offline phase, thefeatures are extracted from RF measurements and tagged with the locationID and AP ID in a map representing the area, such as a building map orcampus map, such that RF features and physical locations are associated.During the online phase, the location is determined by comparing the RFfeatures extracted from online measurements with the RF fingerprintinginformation. RSSI or SNR is widely used in creating the feature vectors,though time-based information (e.g., ToA, TDoA), angle-of-arrival (AoA),and/or other information may also be used for fingerprinting andsubsequent location estimation. The location accuracy associated withthe RF fingerprinting technique may be improved by multipath/NLOSdetection and/or selecting the best frame or subcarrier for locationestimation. For example, the measure (e.g., coherence bandwidth)calculated for NLOS/multipath detection can be used in composing the RFfingerprinting feature vectors. Smaller weight can be assigned to thefeatures from the wireless network devices under less favorable channelcondition (e.g., NLOS/multipath condition). It should be appreciatedthat the major source of errors in RF fingerprinting is the variation inthe features. By selecting the best frame(s) or subcarrier(s) forlocation estimation, features can be extracted from the RF measurementswith a smaller variation.

It is known that when there are more than one receiver chain, any IEEE802.11 frame (single stream or multi-stream) will be received by all thereceive chains. All chains can measure and record the signal strengthper-chain, though the reported signal strength may be a filtered or acombined value. The radios can also accurately timestamp the datareceived on each chain separately. The time-stamping can occur atpreamble start time or at OFDM symbol boundaries.

When the signal strength measurement is available for more than onechain, the variability in signal strength across chains for packetswithin a small time window (so as to take mobility into account) can beused to select/discard or weight the radio nodes. The variability acrossthe RF chains may also be used to detect the chain that received theframe/spatial stream through the most direct path. Even when the radionode is not an intended recipient of TxBF or MU-MIMO transmission, itmay be capable of estimating the SNR per subcarrier.

According to the IEEE 802.11 standards, when a wireless network deviceor a client device is part of TxBF or MU-MIMO, one of them (beamformeeor beamformer) is responsible for estimating the channel. In explicitTxBF and MU-MIMO, the beamformee is responsible for providing thechannel feedback information to the beamformer. The beamformeecalculates or estimates the predicted SNR per subcarrier in the soundingframe. The SNR may not be available for every subcarrier, as somesubcarriers such as those on the edge of the channel, DC subcarriers andpilot subcarriers may be omitted. In addition, theimplementation-specific constraints may require that receiver to performthe SNR estimates for only a subset of the subcarriers (e.g., everyn^(th) subcarrier). The beamformee also calculates the average SNR ofthe frame, which is an arithmetic mean of the per-subcarrier SNRs.Depending on whether the beamformee is part of TxBF or MU-MIMO, thefeedback information sent to the beamformer may only have the averageSNR per-spatial stream or both the average SNR and SNRs per-subcarrier(encoded as delta SNR from the average SNR). In the case of implicitbeamforming or beamforming to clients that do not support any form ofstandard beamforming (sometimes referred to as “legacy beamforming”),the beamformer performs channel estimation in the reverse direction.This channel estimation may involve estimating the SNR per-subcarrier.Finally, any 802.11 device can perform channel estimation and thereforeSNR per-subcarrier estimation on any received frame and provide the sameto the media access control (MAC) or other layers to be used in locationand other applications. The location accuracy can be improved by usingmany combinations of above described scenarios, where the channelestimate or channel feedback is available.

Embodiments of the disclosure may be utilized under the followingscenarios: 1) multi-chain reception: simple MIMO receiver with multiplechains, where frames are received through multiple chains, where onlythe per-chain RSSI/SNR and/or per-chain timestamp are available; 2)receiver channel estimate: the channel estimates available from anyreceiver have per-subcarrier SNR or RSSI for frames received from aspecific client device. This information may be available on anyreceiver regardless of beamforming support or in case the beamformeesupports implicit beamforming or legacy beamforming; 3) TxBF channelfeedback: the beamformee sends periodic channel feedback to thebeamformer upon reception of a sounding frame from the beamformer. Thechannel feedback consists of Givens rotations (per-subcarrier) andper-stream average SNR; and/or 4) MU-MIMO channel feedback: theMU-capable beamformee sends MU-MIMO channel feedback to the beamformer,which consists of both the per-stream average SNR and per-subcarrierdelta SNR, in addition to other information related to the channelmatrix. Though the 802.11ac standard defines only downlink MU-MIMO(e.g., from wireless network device 110 to client device 120), in thefuture uplink MU-MIMO may be supported.

In different embodiments, various methods have been contemplated toimprove the accuracy of location estimation. In one embodiment, for eachchain/spatial stream, a level of multipath/N LOS is detected using SNRvariation over time. This method can be used when the per-chain SNR isavailable either at the receiver (e.g., multi-chain reception) or at thetransmitter (e.g., the receiver sending the per-stream/chain SNR in theform of single-user or multi-user feedback). In the case of single-useror multi-user feedback, the transmitter (beamformer) has additionalinformation about the frame, since it was the source of the frame thatwas used to measure the average SNR at the receiver (beamformee). Sincethe transmitter is capable of estimating the exact effective isotropicradiated power (EIRP), where this EIRP is the one at which the frame wastransmitted (not the EIRP per-frame or per-radio), the exact loss indecibels (dB) between the source and the destination can be calculated.The SNR variation method determines how the SNR of each chain/stream isvarying over time in order to detect the chain/stream with least localscattering or multipath.

For example, the chain/stream with the highest SNR (e.g., most likelythe direct path) or lowest standard deviation or the least dB loss (pathloss) can be used. Once the chain(s)/stream(s) with the least multipathare known, they can be used in location estimation along with theassociated RSSI/SNR or timestamp. In the case of single-user andmulti-user feedback, this information is used to calculate the exactloss in dB between the transmitter and receiver, which can be used fortrilateration or multilateration. In other words, the space-timestream(s) that suffer the least from the NLOS/multipath can be chosenfor location/range estimation. In addition, a measure of coherence ofSNR over spatial streams may be used to estimate the level ofmultipath/NLOS.

In another embodiment, for each subcarrier, a level of multipath/N LOSis detected using SNR variation over time. While the SNR variationmethod (which uses the SNR per-frame or average SNR measured per-chainor per-stream) improves the location accuracy by detecting the level ofmultipath, the accuracy of location estimation can be further improvedwhen per-subcarrier SNR is available, as in the MU-MIMO channelfeedback. The transmitter is capable of estimating the actual EIRPper-subcarrier of the sounding frame it transmitted. When the beamformerreceives the per-subcarrier SNR from the beamformee, it calculates theexact loss in dB for each subcarrier. The SNR variation algorithm is runon a per-subcarrier basis to determine the subcarrier with the leastmultipath. For example, the subcarrier with the lowest standarddeviation or the lowest signal loss (indicating the most direct path)may be used to determine the level of multipath in some cases. The SNRloss of the selected subcarrier may be used by the location estimationalgorithm to determine a distance.

In yet another embodiment, a level of multipath/N LOS is detected usingthe coherence bandwidth. The coherence bandwidth is a measure of therange of the frequency channels over which the channel is considered tobe flat, namely, variation in amplitude less than a prescribed value. Inother words, the coherence bandwidth is inversely proportional to thedelay spread. The delay spread is directly proportional to the level ofmultipath. It is known that the higher the coherence bandwidth, thelower the impact of multipath is. The OFDM subcarrier bandwidth (e.g.,312.5 kHz) in IEEE 802.11 standards is designed to be smaller than thecoherence bandwidth. When the delay spread is higher, the coherencebandwidth will be unacceptably low. The coherence bandwidth may becalculated from OFDM subcarrier information, thereby estimating thelevel of multipath, as will be described below. Based on the SNRvariation over-subcarriers methods, the list of contiguous subcarrierswith a fairly flat amplitude variation may be determined. The maximumlevel of variation to be considered as “flat” can be defined as athreshold or percentage. From these, the coherence bandwidth may beestimated, which is a multiple of OFDM subcarrier bandwidth (e.g., 312.5kHz). The level of multipath is inversely proportional to this coherencebandwidth. The detected level of multipath is used in the locationestimation, as will be described below. Table 1, which is reproducedfrom M. Carroll; T. A. Wysocki, Delay Characteristics for an IEEE802.11a Indoor Wireless Channel, shows coherence bandwidth measurementsfrom a real deployment of 802.11 OFDM system at various locations.

TABLE 1 Sample coherence bandwidth measurements in 5 GHz Pos. RoomHallway Stairs Theatre A 733.47 1319.40 321.71 842.90 B 628.75 781.51317.41 285.71 C 775.12 570.88 337.15 444.79 D 818.92 475.24 1034.601381.80 E 1554.10 398.36 566.65 247.56 F 829.14 485.74 374.43 306.92 G514.94 335.43 238.36 H 423.49 473.30 I 509.96

In still another embodiment, the average EIRP and per-subcarrier EIRP atthe transmitter may be estimated. It is known that a beamformer has theinformation necessary to accurately calculate the exact power (EIRP) ofa frame it transmits. The power can be calculated per-frame or on aper-subcarrier basis. The transmitter knows the exact values of transmitpower, antenna gain and any loss in the transmit path between the radioand the antenna. Based on the known signature of OFDM signals, thetransmitter estimates the total power measured transmitted out of theantenna per-frame (typically measured at preamble time) and theper-FFT-bin power or per-subcarrier power. This can be done throughone-time measurements and calibration at the transmitter by looping backthe transmissions to the receiver path. The first two multipathdetection methods described above that are based on SNR variation overchains/spatial streams and over subcarriers use this known informationin estimating the exact loss between the transmitter and receiver.

In a further embodiment, anchor nodes may be selected based on a levelof multipath/N LOS. When a level of multipath/N LOS is detected with anyof the abovementioned methods, each node (e.g., a wireless networkdevice 110 or a client device 120) may be assigned a value or weightthat indicates the level of multipath/NLOS effect on that node. Inlocation calculation, certain nodes are used as “anchor” nodes (e.g.,wireless network devices 120 with known location coordinates). Themultipath/NLOS weight can be used to select anchor nodes (if more thanthe minimum necessary nodes are available) or assign the confidencelevel (e.g., different confidence levels to different anchor nodes basedon the multipath/N LOS level) to the information used in the locationestimation algorithm (e.g., weighted least square method fortrilateration).

The beamforming channel feedback can be helpful in locationdetermination for both client devices 120 and wireless network devices110. In the explicit beamforming, the beamformee measures and calculatesthe channel feedback information, and it is delivered to the beamformer.Thus, both the client device 120 and the wireless network device 110have the channel feedback information in the explicit beamforming. Inthe single-user mode, only the beamformee has the SNR information perOFDM subcarrier. In MU-MIMO, the beamformer can obtain the delta SNR perOFDM subcarrier information from MU exclusive beamforming information.Thus, both the beamformer and the beamformee have the SNR per OFDMsubcarrier information in MU-MIMO.

In implicit beamforming, the channel is evaluated by the beamformer uponreceiving sounding frames from the beamformee. In the client/mobiledevice-based location determination, the client/mobile device has to bethe beamformer. In the access point/network device-based locationdetermination, the wireless network device has to be the beamformer.

The availability of the beamforming channel information differs by therole in the beamforming (e.g., beamformer or beamformee), and the typeof beamforming. Location determination can benefit from whatever thebeamforming channel feedback information is available.

Client beamforming channel feedback is useful in addition to the legacyradio resource measurements including IEEE 802.11k radio measurementreports (e.g., beacon report, frame report, etc.) for the locationdetermination because some features such as SNR variation oversubcarriers and coherence bandwidth can be extracted only by using thebeamforming channel feedback while it is not available from existingradio resource measurements such as the IEEE 802.11k channel report.

It should be appreciated that no overhead over the air is incurred sincethe sounding frames and beamforming feedback are transmitted regardlessof the support for the location determination.

Table 2, Table 3, and Table 4 are illustrative representatives thatsummarize the availability of each channel evaluation measurement by thebeamforming type and the beamforming role.

TABLE 2 Availability of SNR per OFDM subcarrier and per Space-Timestream Single User Single User Multi User Explicit Implicit ExplicitBeamforming Beamforming Beamforming Beamformer NO YES YES Beamformee YESNO YES

TABLE 3 Availability of Average SNR per Space-Time stream (Arithmeticmean of SNR over OFDM subcarrier) Single User Single User Multi UserExplicit Implicit Explicit Beamforming Beamforming BeamformingBeamformer YES YES YES Beamformee YES NO YES

TABLE 4 Availability of Channel Steering Matrix V Single User SingleUser Multi User Explicit Implicit Explicit Beamforming BeamformingBeamforming Beamformer YES YES YES Beamformee YES NO YESAnchor Node Selection and Space-Time Stream Selection by Multipath/NLOSDetection

In order to use multilateration or trilateration in the locationdetermination, the range between nodes (in trilateration such as Time ofFlight/Arrival) or the difference in range to two or more nodes (inmultilateration such as Time Difference of Arrival) has to be estimated.At the presence of severe NLOS condition between nodes, the accuracy ofrange estimation may be affected by an error resulted from NLOS(positive bias in the case of time-based measurement). The mobility onthe channel and the multipath may impair the accuracy of the rangeestimation, too. The range estimation can be done from the time-basedmeasurements (e.g. Time of Flight) as well as the power measurementssuch as SNR or RSSI. In trilateration or multilateration, the locationsof the anchor nodes are known, and, the location of the mobile nodeneeds to be determined. In the wireless local area network, the anchornode is usually a wireless network device 110 with known locationcoordinates. However, the client devices 120 with known locations can beused as anchor nodes when the location of wireless network device 110(for example, in rogue AP detection) has to be determined. The minimumnumber of anchor nodes that is needed to determine the location of amobile node in the two dimensional space is three.

Since the mobile node may see more than three anchor nodes in a typicaldense deployment, the anchor nodes in the severe multipath or NLOSconditions can be discarded in the trilateration or multilateration.Rather than completely discarding the anchor nodes in the multipath/NLOScondition, it is also possible to assign a weight for each anchor nodebased upon the severity of multipath/N LOS condition in thetrilateration or the multilateration. In order to make a decision onwhich anchor to discard in the location determination or to calculatethe weight, multipath/NLOS detection may be performed between eachanchor node and the mobile node.

In this embodiment, a measure, corresponding to the severity ofmultipath/NLOS condition is calculated for each anchor node with indexiε{1, 2, . . . , N_(anchor)} (N_(anchor) is the number of anchor nodesseen from the mobile node). m_(i) is calculated in terms of twoparameters,

(the coherence bandwidth vector calculated for the channel betweenanchor node i and the mobile node) and C_(STS,i) (a measure of coherenceof SNR measurements over space time streams):m _(i) =f(

,C _(STS,i))where

is the coherence bandwidth vector which is defined in terms of B_(c,i,k)(the coherence bandwidth of SNR measurements in space time stream k):

=[B _(c,i,0) . . . B _(c,i,N) _(STS,i) ₋₁]where N_(STS,i) is the number of space-time streams between the anchornode i and the mobile node.

The ranking of the fidelity of the SNR measurements over space-timestreams is calculated from

. From

the space-time stream, on which SNR is measured for the rangeestimation, can be selected. For example, the space-time stream k can beselected if B_(C,i,k)≧B_(C,i,m) where mε{0, . . . N_(STS,i)−1} and m≠k.

Both

and C_(STS,i) are measures of the severity of multipath/NLOS between thetarget mobile node and the anchor node i, and they are calculated fromthe beamforming channel feedback or the measurements made to prepare forthe beamforming channel feedback.

The coherence bandwidth can be approximated in terms of the delayspread. 50% coherence bandwidth can be approximated by B_(c)=1/(5*σ_(τ))where “σ_(τ)” is the multipath time delay spread. From the coherencebandwidth calculation, the severity of multipath can be estimated. Inthis embodiment, the coherence bandwidth is estimated from the SNRs ordelta SNRs per OFDM subcarrier measurements, which can be found from thebeamforming channel state information (CSI) channel feedback. The SNRvector for space-time stream k between anchor node i and the mobile nodeis denoted by

.

is calculated from SNR_(k,i,m), which is the SNR of space-time stream kbetween anchor node i and the mobile node on the subcarrier index m:

=[SNR _(k,i,sscidx(0)) . . . SNR _(k,i,sscidx(N) _(s) ₋₁₎]where “N_(s)” is the number of OFDM subcarriers for which the averageSNR_(k,i,m) is calculated and sscidx( ) is a mapping from the indexε{0,. . . , N_(s)−1} to the OFDM subcarrier index. SNR is not calculatedover every OFDM subcarrier (For example, no SNR is calculated for pilotsubcarriers and the direct current “DC” subcarrier).

In MU-MIMO MU exclusive beamforming information, delta SNR per OFDMsubcarrier is provided instead of SNR, which is the SNR value deviatedby the average SNR of the space-time stream. It is denoted by Δ

:Δ

=[ΔSNR _(k,i,sscidx(0)) . . . ΔSNR _(k,i,sscidx(N) _(s) _(′-1))]where N_(s)′ is the number of OFDM subcarriers for which theΔSNR_(k,i,m) is calculated.

Coherence bandwidth B_(c,i,k) with regard to space-time stream k can becalculated from the

or Δ

by finding out the range of subcarriers over which the SNR values areconsidered to be flat. The resolution of the calculated coherencebandwidth may be reduced on the beamformer side in the MU explicitbeamforming when Δ

is used because, even with no grouping, the SNR is reported for everytwo subcarriers rather than for every subcarrier. In order to retain theresolution in the coherence bandwidth estimation and the extraction ofother features, it is desirable to use all subcarrier informationwithout grouping.

From

, a space-time stream (out of N_(STS) space-time streams), referred toas “STS_(best,I)”, on which SNR is measured for the range estimation,can be selected. The index of the space time stream, which suffers lessfrom multipath/NLOS than other space-time streams, is calculated from

. This result can be used in calculating the SNR metric for the rangeestimation, as will be described below.

Next, the coherence of SNR measurements over space-time streams,C_(STS,I), is measured. A large angular spread results from thescattering on the channel primarily due to the presence of multipath. Alarge angular spread implies the signals are coming from many differentdirections. As the angular spread increases, the degree of the spaceselective fading increases. Thus, by monitoring the SNR measurements foreach space-time stream over the time, namely a coherence measure of SNRmeasurements over space-time streams between the anchor node i and themobile node referred to as “C_(STS,I)” can be calculated:C _(STS,i)(t,T)=g(┌MSN

(t,T)^(T) . . . MSN

(t,T)^(T)┐)where “g( )” is a function returning the coherence measure of SNRmeasurements over space time streams, “T” is the size of measurementwindow, “t” is the measurement sequence number when this measure iscalculated, and MS

t,T)) is [Mean (SNR_(k,i)

+1)) . . . Mean(S

t))] where “Mean({circumflex over (x)})” is the arithmetic mean ofvector {circumflex over (x)}, and S

t′) is the vector of SNR measurement, on the space time stream k pereach OFDM subcarrier that is reported in the channel feedback, at thebeamforming channel feedback iteration t′.

There are multiple ways to implement the g( ) which can measure thesignificance of coherence of SNR measurements over space-time streams.One way to implement g( ) is by calculating the variance of the meanSNR, calculated for each space-time stream over T window, over N_(STS,i)space-time streams (g1 below). Also g( ) can be implemented bycalculating the difference between the maximum mean SNR and minimum meanSNR over space-time streams (g2 below):

g₁([MSNt, T)^(T)…  MSN(t, T)^(T)]) − var([Mean(MSNt, T))  …  Mean(MSNR(t, T))])g₂([MSNt, T)^(T)  …  MSN(t, T)^(T)]) = max ([Mean(MSNt, T))  …  Mean(MSN(t, T))]) − min (⌊Mean(MSNt, T))  …  Mean(MSN(t, T))⌋)

From

and C_(STS,i) two measures are calculated for each anchor node i ε{1, 2,. . . , N_(anchor)}: m_(i) and STS_(best,i). Given m_(i), the anchornode under the severe multipath/NLOS condition can be discarded in thelocation determination. It is also feasible to assign a weight for eachanchor node given m_(i) in calculating the trilateration and themultilateration rather than discarding any of the anchor nodes. GivenSTS_(best,i), the space-time stream, from which the SNR value ismeasured for the range estimation between the anchor node i and themobile node, can be selected.

While anchor node selection and anchor node weight calculation was doneby using SNRs in the beamforming channel feedback, the range estimationdoes not need to be done with the SNRs. After the anchor node selectionand anchor node weight decision is done, the range can be estimated by atime-based measurement (e.g. Time of Flight) while it can be alsoestimated by a power-based measurement (e.g. RSSI).

Improved SNR Measurement Calculation

The power-related measure can be used in range estimation in thetrilateration and the multilateration. It can be also used as a featurein the RF fingerprinting. Since the power-measure is affected by thevariation over space and time due to fading at the presence ofmultipath/NLOS, it may be difficult to get a consistent reading ofpower-measure that can be used in the location determination. In thisembodiment, a SNR measure is defined considering the multipath/N LOScondition given the beamforming channel feedback information.

In this embodiment, the multipath/N LOS detection decision is made foreach OFDM subcarrier. Different from the average SNR reported in thebeamforming channel feedback (which is an arithmetic mean of the SNRover reported subcarriers), a SNR measure is defined by discarding theSNR of the subcarriers which suffers from higher multipath/NLOS. ThisSNR measure defined for the location determination is denoted by LSNR,which will be described in detail below.

Multipath/N LOS detection is performed for each OFDM subcarrier in eachspace-time stream between the mobile node and the anchor node i. A knownmultipath/NLOS detection algorithm can be used. For instance, bycalculating the variance of SNR over time, the multipath/N LOS conditionfor a particular OFDM subcarrier in a space-time stream can be detected.In this case, when the variance of SNRs of an OFDM subcarrier m overtime is greater than a certain threshold value, the signals on the OFDMsubcarrier m is determined to be under the influence of multipath/NLOScondition. The mean SNR of a space-time stream k then can be calculateddiscarding those OFDM subcarriers under the influence of multipath/NLOScondition.

The history of SNR vectors for OFDM subcarrier m in space-time stream kbetween anchor node i and the mobile node over the last T beamformingchannel feedbacks is denoted by SN

t,T):SN

t,T)=[SNR _(k,m,i)(t−T+1) . . . SNR _(k,m,i)(t)]where “SNR_(k,m,i) (t′)” is the SNR on the OFDM subcarrier m inspace-time stream k between anchor node i and the mobile node at thebeamforming feedback iteration t′.

From SN

t,T), the multipath/N LOS detection is performed as described above. Themultipath/N LOS detection result for every OFDM subcarrier, consideredin the beamforming channel feedback, is denoted by H_(k,i)(t,T) which isa Boolean vector, representing the result of multipath/NLOS detectionfor the space-time stream k between the mobile node and the anchor node:

=[H _(k,i,sscidx(0))(t,T) . . . H _(k,i,sscidx(N) _(s) ₁₎(t,T)]where H_(k,i,m)(t,T) is the result of multipath/NLOS detection withregard to subcarrier m. It is 0 when multipath/NLOS is detected and 1when multipath/NLOS is not detected. The mean SNR on an OFDM subcarrierm in the space-time stream k over time T, calculated at beamformingchannel feedback iteration t, is denoted by ASN

t,T):ASN

t,T)=[ASNR _(k,i,sscidx(0))(t,T) . . . ASNR _(k,i,sscidx(N) _(s)₋₁₎(t,T)]

The LSNR of space-time stream k can be defined as follows:LSNR _(k,i) =ASN

t,T).*H

/Sum(H

) if Sum(H _(k,i)(t,T))>0where the symbol “.*” is a piecewise multiplication operator between twovectors, and Sum({circumflex over (x)}) is the sum of components invector {circumflex over (x)}. If Sum(H

)=0, LSNR_(k,i) is set to not a number (NaN) which indicates the meanSNR is calculated only with the signals over multipath/NLOS condition.

Referring to FIG. 3, a flowchart illustrating an exemplary method 300for determining path loss per RF subcarrier. At block 310, feedbackinformation may be obtained from a first device, where the feedbackinformation may correspond to at least one frame transmitted to thefirst device. The frame may be a sounding frame, and the first devicemay be a client device. At block 320, a plurality of received signalstrength values may be derived for the at least one frame as received atthe first device based at least in part on the feedback information,where each received signal strength value of the plurality of receivedsignal strength values may correspond to a respective RF subcarrier in aplurality of RF subcarriers. The feedback information may comprise SNRper RF subcarrier in the plurality of RF subcarriers. Moreover, theplurality of signal strength values may be derived further based on anoise floor value detected by the first device. Next, at block 330, aneffective radiated power value corresponding to a particular RFsubcarrier that was used for transmitting the at least one frame may beobtained for each particular RF subcarrier. Thereafter, at block 340, apath loss value for the particular RF subcarrier may be obtained basedon the received signal strength value corresponding to the particular RFsubcarrier and the effective radiated power value corresponding to theparticular RF subcarrier. The obtaining of the path loss value maycomprise subtracting the received signal strength value corresponding tothe particular RF subcarrier from the effective radiated power valuecorresponding to the particular RF subcarrier. Moreover, in oneembodiment, a plurality of path loss values may be obtained, where eachpath loss value may correspond to a respective RF subcarrier of theplurality of RF subcarriers. In another embodiment, a subset of RFsubcarriers may be selected. In a further embodiment, a largest set ofconsecutive RF subcarriers with similar path loss values may beidentified, and a coherence bandwidth may be determined based on thelargest set of consecutive radio frequency subcarriers with similar pathloss values. Thereafter, a level of multipath conditions may bedetermined based on the coherence bandwidth, as described above.

Referring to FIG. 4, a flowchart illustrating an exemplary method 400for discarding unsuitable signal strength data. At block 410, aparticular frame from a second device may be received at each of aplurality of RF chains of a first device. Next, at block 420, a variancein received signal strength for the particular frame as received at eachof the plurality of RF chains of the first device may be determined.Thereafter, at block 430, whether or not to use one or more attributevalues for the particular frame as received at at least one of theplurality of RF chains for determining a distance between the firstdevice and the second device or determining a location of the seconddevice may be determined based at least in part on the variance. In oneembodiment, attribute values for the particular frame as received at atleast one of the plurality of RF chains are not used if the variance isabove a particular threshold. In different embodiments, the one or moreattribute values may be, for example, the received signal strength, or atime-based measurement, etc.

Referring to FIG. 5, a flowchart illustrating an exemplary method 500for selecting suitable received signal strength data. At block 510, ateach of a plurality of RF chains, a corresponding set of frames from asecond device may be received. Next, at block 520, characteristicsassociated with the set of frames received at each particular RF chainof the plurality of RF chains may be determined. In one embodiment, thecharacteristics may correspond to a variance in received signal strengthamong frames in said set of frames. In another embodiment, thecharacteristics may correspond to a level of multipath determined forthe set of frames received at the particular RF chain. In yet anotherembodiment, the characteristics may correspond to a line-of-sight valuedetermined for the set of frames received at the particular RF chain.Next, at block 530, a subset of RF chains from the plurality of RFchains may be selected based on the characteristics associated with theset of frames received at each particular RF chain of the plurality ofRF chains. In one embodiment, the subset of RF chains may compriseexactly one RF chain. Thereafter, at block 540, at least one particularoperation may be performed using the characteristics associated with theset of frames received at the selected subset of RF chains without usingthe characteristics associated with the set of frames received atnon-selected RF chains.

Referring to FIG. 6, a flowchart illustrating an exemplary method 600for filtering data based on RF subcarriers. At block 610, a set of oneor more frames may be received by a first device from a second device.At block 620, characteristics associated with the set of frames for eachRF subcarrier of a plurality of RF subcarriers, on which the set offrames were detected, may be identified. At block 630, a subset of RFsubcarriers may be selected based on the characteristics. At block 640,a first subset of the characteristics associated with the subset of RFsubcarriers may be identified. Thereafter, at least one operation usingthe first subset of characteristics may be performed without using asecond subset of the characteristics. The operation may comprisedetermining a SNR for the received set of frames based on the signalstrength detected for each of the first subset of RF subcarriers.

Referring to FIG. 7, a flowchart illustrating an exemplary method 700for comparing RF signal fingerprints. At block 710, a first set of oneor more frames may be received from a first device at a first location.At block 720, a received signal strength value associated with the firstset of frames at each particular RF subcarrier of a plurality of RFsubcarriers may be identified to obtain a first plurality of signalstrength values. At block 730, a second set of one or more frames may bereceived from a second device. At block 740, a received signal strengthvalue associated with the second set of frames at each particular RFsubcarrier of a plurality of RF subcarriers may be identified to obtaina second plurality of signal strength values. At block 750, whether thefirst plurality of signal strength values and the second plurality ofsignal strength values share one or more similar derived characteristicsmay be determined. In one embodiment, the first plurality of signalstrength values and the second plurality of signal strength values aredetermined to share one or more similar derived characteristics when aratio of signal strength values across different RF subcarriers issimilar. Thereafter, at block 760, a location of the second device maybe estimated as the first location responsive to a determination thatthe first plurality of signal strength values and the second pluralityof signal strength values share one or more similar characteristics.

Referring to FIG. 8, a flowchart illustrating an exemplary method 800for comparing RF signal fingerprints. At block 810, a first set of oneor more frames may be received from a first device at a first location.At block 820, a variability value relating to variability over timeassociated with the first set of frames at each particular radiofrequency chain of a plurality of radio frequency chains may beidentified to obtain a first plurality of variability values. At block830, a second set of one or more frames may be received from a seconddevice. At block 840, a variability value relating to variability overtime associated with the second set of frames at each particular radiofrequency chain of a plurality of radio frequency chains may beidentified to obtain a second plurality of variability values. At block850, a subset of the first plurality of variability values may beselected as a first subset of variability values based, at least inpart, on one or more characteristics associated with the first set offrames. At block 860, a subset of the second plurality of variabilityvalues may be selected as a second subset of variability values based,at least in part, on one or more characteristics associated with thesecond set of frames. In one embodiment, selecting the first and thesecond subset of variability values comprises selecting variabilityvalues associated with radio frequency chains that are associated with asimilar signal strength level. At block 870, whether the first subset ofvariability values and the second subset of variability values share oneor more similar characteristics may be determined. Thereafter, at block880, a location of the second device may be estimated as the firstlocation responsive to a determination that the first plurality ofvariability values and the second plurality of variability values shareone or more similar characteristics.

Therefore, by utilizing embodiments of the disclosure, the accuracy oflocation estimation may be improved despite the presence ofmultipath/NLOS conditions. A level of multipath/NLOS may be detected.

While the invention has been described in terms of various embodiments,the invention should not be limited to only those embodiments described,but can be practiced with modification and alteration within the spiritand scope of the appended claims. The description is to be regarded asillustrative rather than limiting.

What is claimed is:
 1. A non-transitory computer-readable mediumcomprising instructions which, when executed by one or more hardwareprocessors, cause performance of operations comprising: obtaining, froma first device, feedback information corresponding to at least one frametransmitted to the first device; based at least on the feedbackinformation: deriving a plurality of received signal strength values forthe at least one frame as received at the first device, each receivedsignal strength value of the plurality of received signal strengthvalues corresponding to a respective radio frequency subcarrier in aplurality of radio frequency subcarriers; for each particular radiofrequency subcarrier in the plurality of radio frequency subcarriers:obtaining an effective radiated power value, corresponding to theparticular radio frequency subcarrier, that was used for transmittingthe at least one frame; and obtaining a path loss value for theparticular radio frequency subcarrier based on the received signalstrength value corresponding to the particular radio frequencysubcarrier and the effective radiated power value corresponding to theparticular radio frequency subcarrier; and estimating a location of thefirst device using the obtained path loss values for the plurality ofradio frequency subcarriers.
 2. The non-transitory computer-readablemedium of claim 1, wherein obtaining the path loss value comprisessubtracting the received signal strength value corresponding to theparticular radio frequency subcarrier from the effective radiated powervalue corresponding to the particular radio frequency subcarrier.
 3. Thenon-transitory computer-readable medium of claim 1, wherein theoperations further comprise obtaining a plurality of path loss values,each path loss value corresponding to a respective radio frequencysubcarrier of the plurality of radio frequency subcarriers.
 4. Thenon-transitory computer-readable medium of claim 1, wherein the at leastone frame comprises a sounding frame.
 5. The non-transitorycomputer-readable medium of claim 1, wherein the feedback informationcomprises Signal-To-Noise ratio per radio frequency subcarrier in theplurality of radio frequency subcarriers.
 6. The non-transitorycomputer-readable medium of claim 1, wherein deriving the plurality ofsignal strength values is further based on a noise floor value detectedby the first device.
 7. The non-transitory computer-readable medium ofclaim 1, wherein the operations further comprise selecting a subset ofradio frequency subcarriers.
 8. The non-transitory computer-readablemedium of claim 1, wherein the operations further comprise: identifyinga largest set of consecutive radio frequency subcarriers with similarpath loss values; determining a coherence bandwidth based on the largestset of consecutive radio frequency subcarriers with similar path lossvalues.
 9. The non-transitory computer-readable medium of claim 8,wherein the operations further comprise determining a level of multipathconditions based on the coherence bandwidth.
 10. The non-transitorycomputer-readable medium of claim 1, wherein the first device is aclient device.
 11. A non-transitory computer-readable medium comprisinginstructions which, when executed by one or more hardware processors,cause performance of operations comprising: receiving, at each of aplurality of radio frequency chains of a first device, a particularframe from a second device; determining a variance in received signalstrength for the particular frame as received at each of the pluralityof radio frequency chains of the first device; based on the variance,determining to use one or more attribute values for the particular frameas received at, at least one of the plurality of radio frequency chains;and estimating a distance between the first device and the second deviceusing the one or more attribute values for the particular frame asreceived at, at least one of the plurality of radio frequency chains.12. The non-transitory computer-readable medium of claim 11, wherein theoperations comprise: estimating a location of the second device usingthe one or more attribute values for the particular frame as receivedat, at least one of the plurality of radio frequency chains.
 13. Thenon-transitory computer-readable medium of claim 11, wherein the one ormore attribute values for the particular frame as received at, at leastone of the plurality of radio frequency chains is not used if thevariance is above a particular threshold.
 14. The non-transitorycomputer-readable medium of claim 11, wherein determining to use one ormore attribute values for the particular frame comprises determining touse the received signal strength for the particular frame.
 15. Thenon-transitory computer-readable medium of claim 11, wherein determiningto use one or more attribute values for the particular frame comprisesdetermining to use a time-based measurement for the particular frame.16. A non-transitory computer-readable medium comprising instructionswhich, when executed by one or more hardware processors, causeperformance of operations comprising: receiving, from a first device ata first location, a first set of one or more frames; identifying avariability value relating to variability over time associated with thefirst set of frames at each particular radio frequency chain of aplurality of radio frequency chains to obtain a first plurality ofvariability values; receiving, from a second device, a second set of oneor more frames; identifying a variability value relating to variabilityover time associated with the second set of frames at each particularradio frequency chain of a plurality of radio frequency chains to obtaina second plurality of variability values; selecting a subset of thefirst plurality of variability values as a first subset of variabilityvalues based at least on one or more characteristics associated with thefirst set of frames; selecting a subset of the second plurality ofvariability values as a second subset of variability values based atleast on one or more characteristics associated with the second set offrames; determining that the first subset of variability values and thesecond subset of variability values share one or more similarcharacteristics; responsive to determining that the first subset ofvariability values and the second subset of variability values share oneor more similar characteristics: estimating that a location of thesecond device is the first location.
 17. The non-transitorycomputer-readable medium of claim 16, wherein selecting a subset of thefirst plurality of variability values as the first subset of variabilityvalues and selecting a subset of the second plurality of variabilityvalues as the second subset of variability values comprise selectingvariability values associated with radio frequency chains that areassociated with a similar signal strength level.
 18. The non-transitorycomputer-readable medium of claim 1, wherein obtaining the effectiveradiated power value includes obtaining the effective radiated powervalue based on a signature of orthogonal frequency-division multiplexing(OFDM) signals associated with the particular radio frequencysubcarrier.
 19. The non-transitory computer-readable medium of claim 11,wherein determining a variance in received signal strength for theparticular frame as received at each of the plurality of radio frequencychains of the first device includes determining a variance in receivedsignal strength over time for the particular frame as received at eachof the plurality of radio frequency chains of the first device.